package test;

import java.util.Scanner;

public class Loops
{

	public Loops()
	{

	}
	
	public static void main(String [] args)
	{
		/**
		 * FOR SCHLEIFE:
		 * schleife wird so lange durchlaufen bis ausdruck false ergibt.
		 * Innerhalb einer for-, while- oder do/while-Schleife lässt sich eine continue-Anweisung einsetzen, die nicht wie break die Schleife beendet, sondern zum Schleifenkopf zurückgeht, sodass dort erneut geprüft werden kann, ob die Schleife weiter durchlaufen werden soll. Ein häufiges Einsatzfeld sind Schleifen, die im Rumpf immer wieder Werte so lange holen und testen, bis sie für die Weiterverarbeitung geeignet sind.
		 * Beispiel Gib die geraden Zahlen von 0 bis 10 aus.
		 */
		for(int i=0; i<=10; i++) 
		{ 
			if ( i % 2 == 1 ) 
		    continue;
			System.out.println( i + " ist eine gerade Zahl" ); 
		}

		/**
		 * WHILE SCHLEIFE:
		 * schleife wird so lange durchlaufen bis ausdruck false ergibt.
		 * Beispiel Zähle von 100 bis 40 in 10er-Schritten herunter:
		 */
		int counter = 100; 
		while(counter >= 40) 
		{ 
			System.out.printf( "Ich erblickte das Licht der Welt in Form einer %d-Watt-Glühbirne.%n", counter ); 
			counter -= 10; 
		}
		
		/**
		 * DO WHILE SCHLEIFE:
		 * schleife wird mindestens einmal durchlaufen, und dann so lange durchlaufen bis ausdruck false ergibt.
		 * Beispiel Zähle von 100 bis 40 in 10er-Schritten herunter:
		 */
		int counter1 = 100;
		do
		{ 
			System.out.printf( "Ich erblickte das Licht der Welt in Form einer %d-Watt-Glühbirne.%n", counter1 ); 
			counter1 -= 10; 
		}
		while(counter1 >= 40);
		
		/**
		 * A simple text scanner which can parse primitive types and strings using
		 * regular expressions.
		 *
		 * <p>A <code>Scanner</code> breaks its input into tokens using a 
		 * delimiter pattern, which by default matches whitespace. The resulting 
		 * tokens may then be converted into values of different types using the 
		 * various <tt>next</tt> methods.
		 */
		while ( ! new Scanner(System.in).next().equalsIgnoreCase("quit") )
		{
			System.out.printf("Sie haben kein %s quit eingegeben!", System.in.toString());
		}
	}
}
